package com.azxc.rapid.plus.system.service;

import com.azxc.rapid.plus.system.vo.TreeNodeVO;
import com.azxc.rapid.system.entity.Dept;
import com.azxc.rapid.system.vo.DeptVO;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * 服务类
 */
public interface IDeptPlusService extends IService<Dept> {


	List<TreeNodeVO> getTreeByUser();

	List<DeptVO> getListDeptById(String deptId);

	Dept selectDeptByUser(Long userId);

	List<TreeNodeVO> getDeptTreeByUser();

	List<TreeNodeVO> getDeptLazyTreeByDeptId(String deptId);

	List<TreeNodeVO> ChildDeptByUser(String deptName);

	List<DeptVO> ChildDeptByDeptId(String deptId);

	List<TreeNodeVO> ChildDeptByUserRegionCode();

	List<DeptVO> getListDeptByRegionCode(String regionCode);

	List<DeptVO> deptByDeptId(String deptId);

	Long getDeptByRegionCodeAndType(String regionCode, String type);

	List<TreeNodeVO> selectDeptTreeWithUserGrant(String deptId);

	List<Dept> selectDeptListByRegion(String regionCode,String deptId);

	/**
	 * 根据传递的行政区划编码-查询关联的部门
	 * @param regionCode
	 * @return
	 */
	List<TreeNodeVO> treeByRegion(String regionCode);
}
